package cn.jszx.core.service.user;

import cn.jszx.core.bean.user.User;
import cn.jszx.core.query.user.UserQuery;

import java.util.List;


public interface UserService {
    /**
     * 基本插入
     *
     * @return
     */
    Integer addUser(User User);

    /**
     * 根据主键查询
     */
    User getUserByKey(String id);

    /**
     * 根据主键查询
     */
    User getSimpleUserByUsername(String username);

    /**
     * 根据主键批量查询
     */
    List<User> getUsersByKeys(List<String> idList);

    /**
     * 根据主键删除
     *
     * @return
     */
    Integer deleteByKey(String id);

    /**
     * 根据主键批量删除
     *
     * @return
     */
    Integer deleteByKeys(List<String> idList);

    /**
     * 根据主键更新
     *
     * @return
     */
    Integer updateUserByKey(User User);


    /**
     * 根据条件查询
     *
     * @param userQuery 查询条件
     * @return
     */
    List<User> getUserList(UserQuery userQuery);
}
